/**
 * 
 */
package de.uni_leipzig.informatik.asv.unsupervised_pos_tagger.datacreation.feature_types;
/**
 * 
 * @author Christoph Teichmann
 * created Jun 3, 2014 4:08:06 PM
 * @version 0.1
 */
public class CaseFeatures extends GenericFeatureGenerator
{
	/**
	 * @param pairs
	 * @param def
	 */
	public CaseFeatures()
	{
		super(new String[][] {{"\\p{Upper}+[^\\p{Upper}]+","INITIALUPPERCASE"},
						{"[^\\p{Upper}]+\\p{Upper}+","ENDINGUPPERCASE"},{"\\p{Upper}+","ALLUPPERCASE"},
						{"[^\\p{Upper}]*","LOWERCASE"}}, "MIXED");
	}
	/* (non-Javadoc)
	 * @see de.uni_leipzig.informatik.asv.unsupervised_pos_tagger.datacreation.FeatureType#process(java.lang.String)
	 */
	@Override
	public String process(String s)
	{return s.toLowerCase();}
	/* (non-Javadoc)
	 * @see de.uni_leipzig.informatik.asv.unsupervised_pos_tagger.datacreation.FeatureType#name()
	 */
	@Override
	public String name()
	{return "CASEFEATURE";}
}